home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / AIAT 1.0.1 / Headers / Corpus / SentCorpus.h < prev    next >
Encoding:
Text File  |  1997-09-11  |  1.5 KB  |  54 lines  |  [TEXT/CWIE]

  1. // SentCorpus.h
  2.  
  3. // A corpus that contains just one document. It treats each sentence as a document.
  4. // Used for document summarization.
  5.  
  6. #pragma once
  7. #include "StringCorpus.h"
  8.  
  9. const uint32    IASentenceCorpusType = 'Snt0';
  10.  
  11. class RankedHit;
  12.  
  13. class SentenceDoc : public StringDoc {
  14. public:
  15.         SentenceDoc(byte* txt, uint32 len, uint32 sentenceNumber, uint32 paragraphNumber,
  16.                     uint32 rank=0, RankedHit* hit = NULL);
  17.         SentenceDoc() : StringDoc(), fSentenceNumber(0), fRank(0), fParagraphNumber(0), fHit(NULL) {}
  18.         virtual        ~SentenceDoc();
  19.  
  20.         IAStorable*    DeepCopy() const;
  21.         uint32        StoreSize() const;
  22.         void        Store(IAOutputBlock* output) const;
  23.         IAStorable*    Restore(IAInputBlock* input) const;
  24.  
  25.         bool        LessThan(const IAOrderedStorable* neighbor) const;
  26.         bool        Equal(const IAOrderedStorable* neighbor) const;
  27.         
  28.  
  29.         void         SetRank(uint32 rank) {fRank = rank;}
  30.         void        SetRankedHit(RankedHit* rh) {fHit = rh;}
  31.         
  32.         uint32        GetSentenceNumber() const {return fSentenceNumber;}
  33.         uint32         GetRank() const {return fRank;}
  34.         uint32        GetParagraphNumber() const {return fParagraphNumber;}
  35.         RankedHit*    GetRankedHit() const {return fHit;}
  36.         
  37. private:
  38.         uint32        fSentenceNumber;
  39.         uint32        fRank;
  40.         uint32        fParagraphNumber;
  41.         RankedHit*    fHit;
  42. };
  43.  
  44.  
  45. class SentenceCorpus : public IACorpus {
  46. public:    
  47.                 SentenceCorpus() : IACorpus(IASentenceCorpusType) {};
  48. //                SentenceCorpus(SentenceCorpus& fc) : IACorpus(fc) {};
  49.                 ~SentenceCorpus() {}; 
  50.                 IADoc*    GetProtoDoc();
  51.                 IADocText*    GetDocText(const IADoc* doc);
  52. };
  53.  
  54.